|
|
Just as an experiment, I want to start coding small stuff that might eventually turn into a Golden Sun style game. And I want people to be able to hack it. And I want to be able to show my stuff off TO YOU GUYS, so you know it's hackable, right from the beginning. So what's the first component I should try and build, to show off? No promises, but it gives me something to work towards. Eventually, who knows if it might end up as a GoldenSun-style game, and something that could be used for a community project. Initially, I had wanted to make a simple conversation engine, where I stored and loaded lines of text. I figured it'd be enough of a challenge to store and navigate conversation trees. Basically, there'd be a red room, a green room, and a blue room. Within each room there'd be a number of NPCs to talk to, and I basically wanted to come to you guys for ideas for a simple script, or simple types of puzzles that would have to do just with conversation. I.e. talk to person A, to unlock a conversation option with person B, etc etc. This isn't the kind of stuff I normally do, but I figure you guys are all into stories and RPGs, and would be better suited to it. (I was inspired a bit by the following concept) squidi.netBut then I figured, "hey, maybe they care more about battle systems and stuff." And that sort of got me thinking of other stuff I could try and do, such as reproduce battle animations in classic GoldenSun. Then again, there's *no way* I could do the 3D stuff they do in Dark Dawn. TL;DR: What's the first thing I should try and make, that might be a small step towards a community project?
|
|
|
|
|
|
Veteran Member
Coins: 99
[increase]
Send Money
Online
I am: Giving you the juicer. *Hands out teawater.*
Clan Position: Head Gallant
Posts: 1465
Respect: +117
|
Which coding language were you planning to use? (Assuming you are working on an entirely new project that isn't on the GBA.) I.e. talk to person A, to unlock a conversation option with person B, etc etc. This isn't the kind of stuff I normally do, but I figure you guys are all into stories and RPGs, and would be better suited to it. That means Person A will turn on Flag A. For Person B, if Flag A is off, he has one dialogue, if on, he has a different dialogue. (Or both, depending on how you do it.) (Which I think is simple to understand.)
|
|
|
|
« Last Edit: 05 January 2014, 06:56:46 by Teawater »
|
Logged
|
You won't find it in the guilts of yesterday. You won't find it in the fears of tomorrow. You'll find it in today, right now. The miracle is in the moment. 
|
|
|
|
|
|
I think I'll be using LÖVE, which is..., well, just check the wiki and look at "getting started" if you're curious. "As you probably know by now, LÖVE is a framework for making 2D games in the Lua programming language. LÖVE is totally free, and can be used in anything from friendly open-source hobby projects, to evil, closed-source commercial ones." I'm choosing this because 1) how easy it is to make pictures appear on screen. 2) It doesn't need a compiler. Basically drag a game folder over the love icon to make the game run. 3) to make a game program that will run when clicked, put the stuff in the folder in a .zip file, and simply change from .zip to .love. (though I think you have to have love2d installed for this to work). 4) to look inside a .love game, just turn .love to .zip, and then unzip. Then you can change whatever you want in there. It's perfect for hacking. And really what little I've done has been super easy. Easy to code, easy to hack... At least that's my expectation, and hopefully you guys help me test that. EDIT: to use it, in addition to downloading the latest version of love2d, all you'd need is 1) NotePad++ (notepad-plus-plus.org) 2) 7-Zip (7-zip.org) So those are all free, and you don't need an impressive computer to use them.
|
|
|
|
« Last Edit: 05 January 2014, 07:10:09 by Thunder-squall »
|
Logged
|
|
|
|
|
Veteran Member
Coins: 99
[increase]
Send Money
Online
I am: Giving you the juicer. *Hands out teawater.*
Clan Position: Head Gallant
Posts: 1465
Respect: +117
|
Huh... Works on Windows, Mac, and Linux. Sounds like a plan.
I might still use Java for my Editor, though, since more people are likely to have it. (I think.) At the very least, the project could also reach out to those people who can't install stuff on their computers. (Ofcourse, I don't know of anyone with such a disadvantage that would be interested in the GS Editor at this time.)
Edit: No wait, the Zip version is not an installer.
|
|
|
|
« Last Edit: 05 January 2014, 08:10:19 by Teawater »
|
Logged
|
You won't find it in the guilts of yesterday. You won't find it in the fears of tomorrow. You'll find it in today, right now. The miracle is in the moment. 
|
|
|
|
|
|
hey, that sounds awesome. Keep doing what you're doing. The worst thing a community project can do is stop people from doing what they're doing, and my goal is quite the opposite of that. It's really for people who aren't really active right now, or who feel they have no way to be active. -- [TL;DR: Basically, the goal is to make a system where people can "program" scenes by simply changing the text file which contains the dialogue.]
I've already started putting effort into the dialogue thing, so I think that's going to be my first project. I think the optimal way to document conversations or scenes would be in text(txt) files, which look like
[angry] person A: I'm Angry! [concerned] person B: Why are you Angry? [scared] person B: It's not because of .. the pie, .. is it?
So I think this is easy and intuitive to read, and conveys a lot of the necessary information required to put stuff on screen, but there's probably stuff I haven't thought about.
How I expect to read the scene The text between ']' and ':' will indicate the speaker, and which set of portraits to use. The text between the '[]' will indicate which of the portraits to use. The text after the ':' will of course be what's output on screen. I figure that symbols like the ".." can be used to create a pause in how fast the text is typed on screen.
Components of the text box 1. Frame: includes the text box, as well as whatever image might denote the speaker. This could be as a text box that appears above characters as speech bubbles, or text boxes with square avatars in them, or perhaps something more like Persona or Disgaea. 2. Text: whatever string of dialogue needs to be written out. 3. Choice: This could be an arrow to move onto the next line of text, or a series of options which players may choose from.
(If there's better terminology out there, let me know. I don't want to reinvent conventions if I don't have to)
what I need from lurkers A design or conceptual framework for the Frame, Text, and Choice. And maybe even a sample scene, and some sample images.
How to handle questions, or forks in dialogue trees
Basically, the goal is to make a system where people can "program" scenes by simply changing the text file which contains the dialogue. Of course, there's stuff I haven't accounted for, such as forks in the dialogue tree.
So I want to ask you guys: How would you expect to write dialogue via text files, in ways which a computer program would then read them? Maybe something like
[concerned] Person A : what do you think?[?] > I like bananas! > I hate bananas! > That's probably not a banana in his pocket... 3 4 6
So I figure that there could be a specific string (i.e. '[?]') which indicates that players may now make a selection. The next lines that start with a '>' indicate a selection choice. The last line after it indicates the three respective text files which each choice might then lead to. So another thing to experiment with is just naming conventions, and how I want to organize folders. I mean RPGs tend to have loads and loads of text and interactions...
what I need get me a sample scene to work towards. That includes whatever images and stuff. Even sound.
|
|
|
|
« Last Edit: 05 January 2014, 08:32:58 by Thunder-squall »
|
Logged
|
|
|
|
|
Veteran Member
Coins: 99
[increase]
Send Money
Online
I am: Giving you the juicer. *Hands out teawater.*
Clan Position: Head Gallant
Posts: 1465
Respect: +117
|
@bananas: Ironically, I have a Marie Callender's Banana Creme Pie right next to me, and I've been picking at it.
That could work, I guess. Maybe you could use a number, though. I.E. [?:1] , and whatever selection that is made can altar the storybook data. (Usually flags, but can contain indexes as well.)
Then you could have stuff like if [?:1] = 0: whatever you want. (Just an example.)
Not so sure jumping to other text files is a good idea?, since options like this could have many effects on other parts of the game as well.
And there's also this concept:
[happy] Toad: Which color Yoshi do you want?[?:1] >Red >Green >Blue [wink] Toad: One [?:1] Yoshi coming right up!
Again, just an example. So that might not be exactly the way it will look...
|
|
|
|
« Last Edit: 05 January 2014, 09:20:15 by Teawater »
|
Logged
|
You won't find it in the guilts of yesterday. You won't find it in the fears of tomorrow. You'll find it in today, right now. The miracle is in the moment. 
|
|
|
|
|
|
Not so sure jumping to other text files is a good idea?, since options like this could have many effects on other parts of the game as well.
In addition to pointing to text files with dialogue in it, I could also point to files with "chunks" in them. Chunks are basically segments of code which I can load and then run. I could experiment with using those to do just about anything I wanted. Of course, one will have to know code to use these, but what can you do? But see, right now we're talking in hypotheticals. This is why I need someone to come up with a sample scenario. And Ideally, I'd want to make a mock game that used mostly just the stuff we're making. Idea for a game:How about a kid in the Golden Sun world, running around the house before a festival, gathering supplies, picking decorations, and hearing stories of other things in the world? Kind of like a sand-box graphic novel.
|
|
|
|
|
|
Great Member
 
Coins: 25
[increase]
Send Money
Offline
Gender: 
Clan Position: Mercury Hack Leader
Posts: 623
Respect: +74
|
If you want to do something that would end up GS-styled, you could try recreating the debug rooms in TLA. And I don't think "hackable" is the word you wanted to use. Since I assume you would give everyone access to the source, possibly an editor, etc. there would be no need to hack it.
But well, if you can do this... it might be the start of something great.
|
|
|
|
|
|
|
|
you could try recreating the debug rooms in TLA.
I've never played The Lost Age (GS2). Can you point me towards some sources where I can see what these are? And I think using the word "hacking" nowadays is essentially a stylistic choice (i.e. how Mozilla encourages kids to 'hack'), but it's also... Well, I think the editors I make will be able to write text files to one, very specific location on peoples' machines (see love.filesystem, towards the top where it says "Each game is granted a single directory on the system where files can be saved through love.filesystem."). And to include those in a game, people will have to copy-paste those files into their game folder. At least if they then want to share those with others. So while the intent is for people to mod the game, it'll require some know-how, and a bit of hacking. But sure, you can call it "modding" or customization if you'd like.
|
|
|
|
|
|
|
|
I did a quick search for some sprites, and downloaded the complete pack from the golden sun syndicate ( www.goldensun-syndicate.net/sprites). It seems to be nicely organized, and I figure I'd try and maintain that file-structure since, well, they've already got it organized. Is there another set of sprites I should be using instead, or is that source legit?
|
|
|
|
|
|
|
|
Is it ok to attach files like this, or do you guys discourage it due to memory limits, or whatever?
The attached image shows the current prototype of the map editor. It focuses on elevation, because that's what I noticed that many of the puzzles in Dark Dawn were based on, i.e. climbing up trees, creating ice pillars, pushing blocks etc.
EDIT: this was made using the love2d.org framework. I think I gave more info on it above.
what's in the image Everything in the dark rectangle represents the editor. 1. Users can click directly on the lattice in the upper left corner in order to change the elevation of the cell, or change its color. 2. Users can select their edit mode: change elevation, or change color.
The drawing to the right of the editor is a translated version of the editor lattice. Right now it's drawn by the program using rectangles, but one could also (a) draw it using sprites, or (b) increase the sophistication with which the image is drawn, i.e. making it isometric, or pseudo 3D.
expected next steps more info on the map I want to be able to overlay symbols onto the editor-lattice. The symbols will correspond to things such as 1. Is this cell climbable, like a tree [in Dark Dawn]? 2. Will this cell respond to X psionic power? 3. Is this cell occupied by column that can be pushed? 4. Is this cell occupied by a log that can be rolled?
player token After that, I will implement a player token, and have the token traverse the setting. It will be controlled using either arrow keys or WASD. It should be able to hop across gaps that are short enough, AND hop up or down blocks that are close enough in elevation.
psionic powers After that, I'll then be in a position to be able to implement and test movable objects, or psionic powers, and all that stuff.
regroup It's around then when I expect I'll probably have to redo everything, in order to move forward in such a way that I can actually make a game.
long term goal (~1 year) Create a game of puzzle dungeons. These are basically the portion of Golden Sun games where you use psionic powers to get through dungeons and stuff.
the type of help I'd like 1. At the very least, encouragement. Or +1 the post if you want to remain a lurker.
2. Advice. I'm going to have a limited number of cell-color options, and a limited number of terrain obstacles or psionic powers. I need help on selecting what these few should be, in such a way that designers still have a full breadth of options when designing puzzle dungeons.
3. Beta testers. Or rather, level designers. You guys are essentially the end-users I'm designing for, and I want to create a program that'll let you do what you need to do.
4. Eventually, volunteer to be programmers. Basically, if you don't like the way the grids look, or if you don't like the user interface, I'll let you know what basic code you need to know in order to fix this. My code's pretty messy right now, but if I know that Person A really wants to fix Thing B, then that'll give me incentive to clean up Thing B.
|
|
|
« Last Edit: 07 January 2014, 05:43:00 by Thunder-squall »
|
Logged
|
|
|
|
|
|
|
minor updates: 1. I've changed some aesthetic stuff and made the grids square, to resemble golden sun. 2. I've got the base design for the player token. It's drawn in the program itself, so I can change parameters like the relative size of things, the flatness of the base, the colors, etc.
Stuff that's currently in the works: I'm working on eyes that indicate the direction the token is facing, and I'm working on a generic wizard's hat.
thoughts on the immediate project: The least amount of additional character detail I need for this project is a wizard's hat. The color of the clothes will vary with the psionic power the player currently has selected.
thoughts on future projects Next would be a battle system, which would require various characters of various classes. I could use sprites to place hats, shields, and weapons on this base token design, as an easy and effective way to differentiate characters. Or these could be drawn by the computer, in order to maintain the art-style of this prototype. Either way, this is exactly the kind of stuff others could easily help with, without having to know how everything else looks.
|
|
|
|
|
|
|
|
spamming my own thread. I worked a bit more on the player token (see attachments; the first one's a gif that shows how the eyes move), but when I quickly sketched some hair options, they looked, in my opinion, pretty ugly. If anyone wants to sketch or re-purpose some head gear for the template (also attached), I'll be able to add a character-editor that people can play with. I need *at least* two views: diagonal forward (facing towards the player) and diagonal backwards (facing way from the player).
|
|
|
|
|
|
|
|
try some of this out, and let me know what you think. Install LÖVE 0.9.0 from love2d.org
|
|
|
|
|
|
Great Member
 
Coins: 25
[increase]
Send Money
Offline
Gender: 
Clan Position: Mercury Hack Leader
Posts: 623
Respect: +74
|
Excellent work, I'm seriously considering using something like this for my own project now. Well then, about the character mover, some suggestions... (and observations)
Assuming you can't set the location of the pivot point on the map to be identical to the player coordinates: -Always have that point in the center of the map. -It would limit room building in that the room can't be bigger than the viewable area. Not that much of a limitation.
I suggest limiting the up/down camera rotation angle, if camera rotation along the X/Z axis should even be possible. Personally, I would restrict it to rotation around the Y axis (I think it should be obvious why, but tell me if you think I should elaborate).
The next step should be collision detection. I think the best way to do that would be: On pressing W/A/S/D, get the height of the tile you're about to move to, and compare the height of it to the height of the tile you're currently standing on. If the difference is too big, don't allow that movement. Preferrably allow a greater difference if the height of the destination tile is lower than the current tile, since you would normally expect dropping to be easier than climbing.
But of course, if you have some other solution in mind... my suggestions are just that, suggestions.
And a suggestion for the map editor: allow elevation to be shown by different shades. I think that would make it much easier to see what you're doing.
Also, I sketched up some hair for you, quick n' dirty, based on what you did on the template. You're welcome to use it for testing and what not if you want to (well, anyone is free to use it for whatever). The second picture has transparent background.
|
|
|
« Last Edit: 12 January 2014, 21:40:26 by Misery »
|
Logged
|
|
|
|
|
|